# -*- coding: utf-8 -*-
from sqlite3 import Error
import sqlite3

# 数据库文件路径
db_file = '../data/config.db'


def insert_or_update_info(sql, value):
    '''
    :param sql:
    :param value:
    :return:
    sql:需要执行的sql语句----例如：INSERT INTO student(sname, sage) VALUES (?, ?)
    value:需要插入的数据，单条信息为元组('哈哈',18)，多条信息为列表[(), (), ()]
    插入数据可以传入多条，更新只能传入单条数据
    '''
    try:

        # 连接数据库
        conn = sqlite3.connect(db_file)
        # 创建游标
        cour = conn.cursor()

        # 执行sql语句
        cour.execute(sql, value)
        # 提交数据-同步到数据库文件-增删改查，除了查询以外有需要进行提交
        conn.commit()
        # 打印受影响的行数
        print(cour.rowcount)
        # 关闭游标
        cour.close()
        # 关闭连接
        conn.close()
        return True
    except Error as e:
        print(e)
        return False

def select_flow(sql):
    try:
        # 连接数据库
        conn = sqlite3.connect(db_file)
        # 创建游标
        cour = conn.cursor()
        # 查询语句sql：select 列名(*-所有列) from 表名 [where 条件]
        # 执行sql语句
        cour.execute(sql)
        # 打印查询结果
        data = cour.fetchall()
        # 关闭游标
        cour.close()
        # 关闭连接
        conn.close()
        value = []
        for i in data:
            value.append(i[2])
        return value
    except Error as e:
        print(e)
        return False



